package com.learn.designPatterns.behavioral.templateMethod;

/**
 * @classname:
 * @Description:
 * @author: yfpu
 * @Date: 2018-10-25 19:31
 */
public abstract class CaffeinBeverage {

    public void prepareRecipe() {
        boilWater();
        brew();
        pourInCup();
        addCondiments();
    }

    abstract void brew();
    abstract void addCondiments();

    void boilWater() {
        System.out.println("boilWater");
    }

    void pourInCup() {
        System.out.println("pourInCup");
    }
}
